package com.byron.media.server.test;

import com.byron.media.server.config.MediaServerConfig;
import com.byron.media.server.ffmpeg.AnyReceiver;
import com.byron.media.server.ffmpeg.FrameListener;
import com.byron.media.server.ffmpeg.ReceiverListener;
import com.byron.media.server.utils.FrameInfo;
import com.byron.media.server.utils.UdpSender;
import org.junit.Test;

public class MediaSender {

    @Test
    public void sender() throws InterruptedException {

        final UdpSender udpSender = new UdpSender("239.255.255.1", 9999);

        MediaServerConfig config = new MediaServerConfig();
        config.setMaxMills(10 * 1000);
        config.setMinMills(4 * 1000);

        AnyReceiver receiver = new AnyReceiver(
                config,
                1280,
                720,
//                "rtsp://192.168.10.88:554/hdmi",
//                "G:\\测试用视频\\[www.52pdahd.com]金泫雅-Trouble Maker.1280x720.mp4",  // 1/4796
                "G:\\测试用视频\\GONSIN公信2017版（中文版）.mp4",  // timebase 1/50000
//                "G:\\测试用视频\\GONSIN公信2017版（24帧720P）_.mp4",  // timebase 1/50000
//                "G:\\测试用视频\\test.avi.mp4",  // timebase 1/50000
                new FrameListener() {
                    @Override
                    public void onFrame(FrameInfo frameInfo) {
//                        byte[] temp = new byte[frameInfo.getLength() - frameInfo.getOffset()];
//                        System.arraycopy(
//                                frameInfo.getFrameData(),
//                                frameInfo.getOffset(),
//                                temp,
//                                0,
//                                frameInfo.getLength());
                        udpSender.pushFrameInfo(frameInfo);

                    }
                });
        udpSender.start();
        receiver.start();
        Thread.sleep(1000000000);
    }

}
